package tp

import (
	_ "fmt"
	_ "sync"
)

import (
	//	 dbc "dbConnector"
	"resource"
	"util"
)

type Account struct {
	UserId   util.UserID
	Version  util.ACCVERSION    //账户版本
	IsSAcc   bool               //是否是对标账户
	Holdings map[util.StkID]int //持仓存在于几个周期中
}

type SubAccount struct {
	ParentAcc   *Account
	UserId      util.UserID
	Period      util.Period
	AcceptRecom bool                       //是否接受调配
	CdModel     bool                       //是否接受超跌股票
	OneYearLoss bool                       //是否剔除最近1年亏损股票
	UsePoolLvl  bool                       //是否使用确认池评级，不使用时，评级即使为D依然按确认池分配股票；否则不使用D级确认池分配股票
	Style       uint8                      //操作风格：1 稳健 2 激进
	Holdings    map[util.StkID]*HodingInfo //持仓股
	Follows     *resource.StockPool        //确认池

	CYBTag int16 //todo 是否有创业板权限
	KCBTag int16 //todo 是否有科创版权限
}

type HodingInfo struct {
	Stkid        util.StkID
	MarketSector util.MarketCode
}

func newAccount(personid util.UserID) *Account {
	return &Account{
		UserId:   personid,
		Holdings: make(map[util.StkID]int)}
}
